package com.color.admin.system.servie;


import com.color.admin.common.core.base.BaseService;
import com.color.admin.common.core.page.PageRequest;
import com.color.admin.common.core.page.PageResponse;
import com.color.admin.system.entity.SysPost;
import com.color.admin.system.entity.query.PostQueryCriteria;
import com.color.admin.system.entity.vo.post.PostSmallVo;
import com.color.admin.system.entity.vo.post.PostVo;

import java.util.List;
import java.util.Set;

/**
 * @author HaiQiu
 */
public interface PostService extends BaseService<SysPost,SysPost,
        Set<String>,String,SysPost, PageRequest<PostQueryCriteria>, PageResponse<PostVo>> {


    /**
     * 查询所有岗位
     * @param postName
     * @return
     */
    List<PostSmallVo> postAll(String postName);


    /**
     * 模糊分页查询
     * @param request 请求参数
     * @return 返回分页数据
     */
    @Override
    PageResponse<PostVo> list(PageRequest<PostQueryCriteria> request);

    @Override
    void save(SysPost sysPost);

    @Override
    void update(SysPost sysPost);

    @Override
    void delete(Set<String> postIds);

    @Override
    SysPost get(String postId);
}
